﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Data;
namespace Business
{
    public class ControladorRegla
    {
        public static List<Regla> getRules(int idStatus)
        {
            dbAlertasEntities db = new dbAlertasEntities();
            var reglas = from r in db.Reglas
                         where r.status.status_id == idStatus
                         orderby r.nombre
                         select r;
            return reglas.ToList();
        }
        public static bool saveRule(string mail, string asunto, int cant, string  destinatarios,string nombre, string status)
        {
            try
            {
                dbAlertasEntities db = new dbAlertasEntities();
                Regla newRegla = new Regla();
                newRegla.asunto = asunto;
                newRegla.idregla = Guid.NewGuid();
                newRegla.status = ControladorEstado.getOneStatusByDesc(status);
                newRegla.dias = cant;
                newRegla.mail = mail;
                newRegla.nombre = nombre;
                db.AddToReglas(newRegla);
                db.SaveChanges();
                return true;
            }
            catch(Exception ex)
            {
                return false;
            }
            finally
            { }
        
        
        }
        public static bool updateRule(Guid idRegla,string mail, string asunto, int cant, string destinatarios,string nombre)
        {
            try
            {
                dbAlertasEntities db = new dbAlertasEntities();
                Regla Regla = db.Reglas.Where(x => x.idregla == idRegla).FirstOrDefault();
                Regla.asunto = asunto;
                Regla.dias = cant;
                Regla.mail = mail;
                Regla.nombre = nombre;
                Regla.direcciones = destinatarios;
                db.SaveChanges();
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
            finally
            { }


        }
        public static Regla getOneRule(Guid idRule)
        {
            dbAlertasEntities db = new dbAlertasEntities();
            var regla = db.Reglas.Where(x => x.idregla == idRule).FirstOrDefault();
            return regla;
        }
    }
}
